/*
Copyright (C) 1997-2001 Id Software, Inc.

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  

See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
*/

// Created on 11.11.2003 by RST.
// $Id: mframe_t.java,v 1.2 2004/08/20 21:29:58 salomo Exp $
using System;
using Lib = Suake2.UI.util.Lib;
using QuakeFile = Suake2.UI.util.QuakeFile;
namespace Suake2.UI.game
{
	
	public class mframe_t
	{
		public mframe_t(AIAdapter ai, float dist, EntThinkAdapter think)
		{
			this.ai = ai;
			this.dist = dist;
			this.think = think;
		}
		
		/// <summary>Empty constructor. </summary>
		public mframe_t()
		{
		}
		
		public AIAdapter ai;
		public float dist;
		public EntThinkAdapter think;
		
		public virtual void  write(QuakeFile f)
		{
			f.writeAdapter(ai);
			System.IO.BinaryWriter temp_BinaryWriter;
			temp_BinaryWriter = new System.IO.BinaryWriter(f);
			temp_BinaryWriter.Write((System.Single) dist);
			f.writeAdapter(think);
		}
		
		public virtual void  read(QuakeFile f)
		{
			ai = (AIAdapter) f.readAdapter();
			System.IO.BinaryReader temp_BinaryReader;
			temp_BinaryReader = new System.IO.BinaryReader(f);
			temp_BinaryReader.BaseStream.Position = f.Position;
			dist = temp_BinaryReader.ReadSingle();
			think = (EntThinkAdapter) f.readAdapter();
		}
	}
}